In today's computer network environment, synchronized or related sessions are often conducted between two remotely connected computers. However, remote controlling a computer from another requires huge amount of data to be transferred continuously between the controlling and the controlled computers. The majority of the data transferred between is the representation of the screens of the controlled computer. As a remote control operation happens in real time, performance of the remote control session is of utmost importance. Any delay in synchronizing the screen images will greatly impact the quality of the remote control session, leaving the users uncomfortable and unsatisfied. One technique to improve the performance of a remote control operation is to reduce the amount of data that needs to be transferred to represent the screen images. This is especially important when the network bandwidth of the communication channel linking the two computers is constrained such as in a wireless or other slow-link environment.
One technique to reduce the transferred information is to send only changes or (changes with respect to the information that was previously transferred) from the controlled computer. However, even just sending the changes, the amount of data sent remains sufficiently high. This solution helps but fails to remedy the problem.
One property of the remote control session is that recurrent screen images are repetitively sent from the controlled computer. This property can be exploited to reduce the amount of data that needs to be sent between the two computers. In some implementations, computer caching techniques are used for storing recurrent screen images, and display them when a detection is accurately made when there is an “exactly the same” image appearing again. It is extremely difficult to use standard techniques like check-summing or sampling to find this “exact match” because of the probability of errors in these techniques.
What is needed is an improved method for displaying recurring images on two computers in a remote control session in a computer network.